home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat4 / dmedia / dmic.z / dmic
Encoding:
Text File  |  2002-10-03  |  11.9 KB  |  199 lines

  1.  
  2.  
  3.  
  4. ddddmmmmiiiicccc((((4444))))                                                                ddddmmmmiiiicccc((((4444))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      DMimageconverter - Digital Media image conversion and compression
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      ####iiiinnnncccclllluuuuddddeeee <<<<ddddmmmmeeeeddddiiiiaaaa////ddddmmmm____iiiimmmmaaaaggggeeeeccccoooonnnnvvvveeeerrrrtttt....hhhh>>>>
  13.  
  14.      ----llllddddmmmmeeeeddddiiiiaaaa
  15.  
  16.      DDDDMMMMiiiimmmmaaaaggggeeeeccccoooonnnnvvvveeeerrrrtttteeeerrrr iiiicccc;;;;
  17.  
  18. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  19.      The DDDDMMMMiiiimmmmaaaaggggeeeeccccoooonnnnvvvveeeerrrrtttteeeerrrr data type and its operations implement the Digital
  20.      Media image converter subsystem.  This is a framework which supports a
  21.      variety of compression and decompression devices and algorithms video
  22.      rate JPEG and MPEG.  NOTE: Some realtime compression devices are
  23.      available only as extra optional products.
  24.  
  25.      The DDDDMMMMiiiimmmmaaaaggggeeeeccccoooonnnnvvvveeeerrrrtttteeeerrrr data type represents an image converter context
  26.      which performs a specific image conversion.  The image conversion is
  27.      principally a specific compression or decompression possibly including
  28.      color space conversion, cropping, zooming, or other such image
  29.      reformatting.  The image converter context takes input from enqueued
  30.      DDDDMMMMbbbbuuuuffffffffeeeerrrrssss and produces an output queue of new DDDDMMMMbbbbuuuuffffffffeeeerrrrssss representing
  31.      converted data.
  32.  
  33. IIIINNNNIIIITTTTIIIIAAAALLLLIIIIZZZZAAAATTTTIIIIOOOONNNN OOOOVVVVEEEERRRRVVVVIIIIEEEEWWWW
  34.      An image converter is first selected on the basis of the type of
  35.      conversion desired.  The image converter context is then created.
  36.      Appropriate buffering is created to hold the input and output data.
  37.      Other producers and consumers of image data are initialized at this time
  38.      as well (such as OpenGL graphics rendering and live video I/O).
  39.  
  40. OOOOPPPPEEEERRRRAAAATTTTIIIIOOOONNNNAAAALLLL OOOOVVVVEEEERRRRVVVVIIIIEEEEWWWW
  41.      The image converter either _e_n_c_o_d_e_s or _d_e_c_o_d_e_s a given specific data
  42.      format.
  43.  
  44.      The image converter takes input packetized in DDDDMMMMbbbbuuuuffffffffeeeerrrr''''ssss....
  45.  
  46.      The image converter produces output also packetized in DDDDMMMMbbbbuuuuffffffffeeeerrrr''''ssss....
  47.  
  48.      The image converter operates _a_s_y_n_c_h_r_o_n_o_u_s_l_y to the process.  A process
  49.      may determine when newly converted data is available using sssseeeelllleeeecccctttt on a
  50.      file descriptor associated with the image converter context.
  51.  
  52. IIIIMMMMAAAAGGGGEEEE CCCCOOOONNNNVVVVEEEERRRRTTTTEEEERRRR SSSSEEEELLLLEEEECCCCTTTTIIIIOOOONNNN
  53.      ddddmmmmIIIICCCCGGGGeeeettttNNNNuuuummmm,,,, ddddmmmmIIIICCCCGGGGeeeettttDDDDeeeessssccccrrrriiiippppttttiiiioooonnnn,,,, and ddddmmmmIIIICCCCCCCChhhhoooooooosssseeeeCCCCoooonnnnvvvveeeerrrrtttteeeerrrr are used to
  54.      discover the image converters installed in the system.
  55.  
  56. CCCCOOOONNNNTTTTEEEEXXXXTTTT CCCCRRRREEEEAAAATTTTIIIIOOOONNNN
  57.      ddddmmmmIIIICCCCCCCCrrrreeeeaaaatttteeee creates a DDDDMMMMiiiimmmmaaaaggggeeeeccccoooonnnnvvvveeeerrrrtttteeeerrrr context for one of the image
  58.      converters discovered above.  A process may create one or more
  59.      DDDDMMMMiiiimmmmaaaaggggeeeeccccoooonnnnvvvveeeerrrrtttteeeerrrr contexts of the same or different image converter.
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ddddmmmmiiiicccc((((4444))))                                                                ddddmmmmiiiicccc((((4444))))
  71.  
  72.  
  73.  
  74.      Multiple DDDDMMMMiiiimmmmaaaaggggeeeeccccoooonnnnvvvveeeerrrrtttteeeerrrr contexts are fully independent and share and
  75.      exchange data only as directed by the DDDDMMMMbbbbuuuuffffffffeeeerrrr operations used in the
  76.      process.
  77.  
  78.      ddddmmmmIIIICCCCDDDDeeeessssttttrrrrooooyyyy destroys the specified DDDDMMMMiiiimmmmaaaaggggeeeeccccoooonnnnvvvveeeerrrrtttteeeerrrr.... No further
  79.      operations on the context are valid.
  80.  
  81. BBBBUUUUFFFFFFFFEEEERRRRIIIINNNNGGGG
  82.      A mechanism for opaquely passing memory buffering requirements from the
  83.      image converter to the DDDDMMMMbbbbuuuuffffffffeeeerrrr system is available using the following
  84.      operations.
  85.  
  86.      ddddmmmmIIIICCCCGGGGeeeettttSSSSrrrrccccPPPPoooooooollllPPPPaaaarrrraaaammmmssss adds the image converter's src (input) memory
  87.      buffering requirements to the passed DDDDMMMMppppaaaarrrraaaammmmssss....
  88.  
  89.      ddddmmmmIIIICCCCGGGGeeeettttDDDDssssttttPPPPoooooooollllPPPPaaaarrrraaaammmmssss adds the image converter's dst (output) memory
  90.      buffering requirements to the passed DDDDMMMMppppaaaarrrraaaammmmssss....
  91.  
  92.      ddddmmmmIIIICCCCSSSSeeeettttDDDDssssttttPPPPoooooooollll indicates to the image converter the DDDDMMMMbbbbuuuuffffffffeeeerrrrppppoooooooollll from
  93.      which it will allocate each DDDDMMMMbbbbuuuuffffffffeeeerrrr placed in the output queue.
  94.  
  95. DDDDAAAATTTTAAAA TTTTRRRRAAAANNNNSSSSFFFFEEEERRRR
  96.      An image converter has one input queue and one output queue.
  97.  
  98.      ddddmmmmIIIICCCCSSSSeeeennnndddd places the DDDDMMMMbbbbuuuuffffffffeeeerrrr on the image converter's input queue.  The
  99.      meaning of the additional DDDDMMMMbbbbuuuuffffffffeeeerrrr arguments is dependent on the image
  100.      converter.  For example, the MPEG image converter uses this mechanism to
  101.      find the reference data needed for interframe decode.
  102.  
  103.      ddddmmmmIIIICCCCRRRReeeecccceeeeiiiivvvveeee returns a DDDDMMMMbbbbuuuuffffffffeeeerrrr from the image converter's output queue.
  104.  
  105. IIIIMMMMAAAAGGGGEEEE FFFFOOOORRRRMMMMAAAATTTT CCCCOOOONNNNTTTTRRRROOOOLLLL
  106.      The process describes the image format of the input data and the format
  107.      of the desired output.
  108.  
  109.      The DDDDMMMMppppaaaarrrraaaammmmssss passed to ddddmmmmIIIICCCCSSSSeeeettttSSSSrrrrccccPPPPaaaarrrraaaammmmssss describes the image format of
  110.      input to the image converter.
  111.  
  112.      The DDDDMMMMppppaaaarrrraaaammmmssss passed to ddddmmmmIIIICCCCSSSSeeeettttDDDDssssttttPPPPaaaarrrraaaammmmssss describes the image format of
  113.      output from the image converter.
  114.  
  115.      mmmmvvvvAAAAddddddddTTTTrrrraaaacccckkkkDDDDaaaattttaaaaPPPPaaaarrrraaaammmmssss and ddddmmmmSSSSeeeettttIIIImmmmaaaaggggeeeeDDDDeeeeffffaaaauuuullllttttssss set parameters useful in
  116.      these calls including:
  117.  
  118.      DDDDMMMM____IIIIMMMMAAAAGGGGEEEE____WWWWIIIIDDDDTTTTHHHH
  119.  
  120.      DDDDMMMM____IIIIMMMMAAAAGGGGEEEE____HHHHEEEEIIIIGGGGHHHHTTTT
  121.  
  122.      DDDDMMMM____IIIIMMMMAAAAGGGGEEEE____PPPPAAAACCCCKKKKIIIINNNNGGGG
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. ddddmmmmiiiicccc((((4444))))                                                                ddddmmmmiiiicccc((((4444))))
  137.  
  138.  
  139.  
  140. CCCCOOOONNNNVVVVEEEERRRRSSSSIIIIOOOONNNN CCCCOOOONNNNTTTTRRRROOOOLLLL
  141.      ddddmmmmIIIICCCCSSSSeeeettttCCCCoooonnnnvvvvPPPPaaaarrrraaaammmmssss is used to pass parameters to the image converter to
  142.      control the conversion process.  All converters accept the following
  143.      controls:
  144.  
  145.      DDDDMMMM____IIIIMMMMAAAAGGGGEEEE____QQQQUUUUAAAALLLLIIIITTTTYYYY____SSSSPPPPAAAATTTTIIIIAAAALLLL
  146.  
  147.      DDDDMMMM____IIIIMMMMAAAAGGGGEEEE____QQQQUUUUAAAALLLLIIIITTTTYYYY____TTTTEEEEMMMMPPPPOOOORRRRAAAALLLL
  148.  
  149.      DDDDMMMM____IIIIMMMMAAAAGGGGEEEE____BBBBIIIITTTTRRRRAAAATTTTEEEE
  150.  
  151. VVVVIIIIDDDDEEEEOOOO IIII////OOOO ---- VVVVLLLL
  152.      Image data is transported between video I/O devices and image converters
  153.      using the DDDDMMMMbbbbuuuuffffffffeeeerrrr subsystem.  Refer to vvvvllllEEEEvvvveeeennnnttttRRRReeeeccccvvvv((((3333ddddmmmm)))),,,,
  154.      vvvvllllEEEEvvvveeeennnnttttTTTTooooDDDDMMMMBBBBuuuuffffffffeeeerrrr((((3333ddddmmmm)))),,,, and vvvvllllDDDDMMMMBBBBuuuuffffffffeeeerrrrSSSSeeeennnndddd((((3333ddddmmmm))))....
  155.  
  156. GGGGRRRRAAAAPPPPHHHHIIIICCCCSSSS RRRREEEENNNNDDDDEEEERRRRIIIINNNNGGGG AAAANNNNDDDD TTTTEEEEXXXXTTTTUUUURRRRIIIINNNNGGGG ---- OOOOppppeeeennnnGGGGLLLL
  157.      Image data is transported between graphics rendering and texturing using
  158.      the DDDDMMMMbbbbuuuuffffffffeeeerrrr subsystem and operations in the OpenGL DMbuffer extension.
  159.  
  160. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  161.      dmICGetNum(3dm), dmICGetDescription(3dm), dmICChooseConverter(3dm),
  162.      dmICCreate(3dm), dmICDestroy(3dm), dmICGetSrcParams(3dm),
  163.      dmICSetSrcParams(3dm), dmICGetDefaultSrcParams(3dm),
  164.      dmICGetDstParams(3dm), dmICSetDstParams(3dm),
  165.      dmICGetDefaultDstParams(3dm), dmICGetConvParams(3dm),
  166.      dmICSetConvParams(3dm), dmICGetDefaultConvParams(3dm),
  167.      dmICGetSrcPoolParams(3dm), dmICGetDstPoolParams(3dm),
  168.      dmICSetDstPool(3dm), dmICGetDstQueueFD(3dm), dmICGetDstQueueFilled(3dm),
  169.      dmICSend(3dm), dmICReceive(3dm).
  170.  
  171.      dm_jpeg(3dm).
  172.  
  173.      dmBufferSetPoolDefaults(3dm), dmBufferCreatePool(3dm),
  174.      dmBufferDestroyPool(3dm), dmBufferGetAllocSize(3dm),
  175.      dmBufferGetPoolFD(3dm), dmBufferSetPoolSelectSize(3dm),
  176.      dmBufferAllocate(3dm), dmBufferFree(3dm), dmBufferMapData(3dm),
  177.      dmBufferGetUSTMSCpair(3dm), dmBufferSetUSTMSCpair(3dm),
  178.      dmBufferGetSize(3dm), dmBufferSetSize(3dm), dmBufferGetImageType(3dm),
  179.      dmBufferSetImageType(3dm), dmBufferGetGLPoolParams(3dm).
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.